home *** CD-ROM | disk | FTP | other *** search
/ Game.EXE 2001 January / Game.EXE_01_2001.iso / demos / Blade of Darkness / data1.cab / Program_Executable_Files / Maps / Casa / selec.py < prev    next >
Encoding:
Text File  |  2000-11-16  |  35.2 KB  |  1,027 lines

  1. import Menu
  2. import Bladex
  3. import Scorer
  4. import ScorerWidgets
  5. import BUIx
  6. import AuxFuncs
  7. import BBLib
  8. import ItemTypes
  9. import Reference #Para demo_mode flag...
  10. import GameText
  11. import MenuText
  12. import KeybWidget
  13. import Language
  14. import GameText
  15.  
  16. execfile ("../../data/text/"+Language.Current+"/casa.py")
  17.  
  18. Bladex.LoadSampledAnimation("../../Anm/Kgt_seleccion.BMV","Kgt_seleccion",1,"Knight_N")
  19. #Bladex.LoadSampledAnimation("../../Anm/Gladius.BMV","Gladius",1,"GladiusSeleccion")
  20. #Bladex.LoadSampledAnimation("../../Anm/Shield_Kgt_seleccion.BMV","Shield_kgt_seleccion",1,"Shield_Kgt_seleccion")
  21.  
  22. Bladex.LoadSampledAnimation("../../Anm/Amz_seleccion.BMV","Amz_seleccion",1,"Amazon_N")
  23. #Bladex.LoadSampledAnimation("..\\..\\Anm\\Arco_Amz_seleccion.BMV","Arco_amz_seleccion",1,"Arco_Amz_seleccion")
  24. #Bladex.LoadSampledAnimation("..\\..\\Anm\\Flecha_Amz_seleccion.BMV","Flecha_amz_seleccion",1,"Flecha_Amz_seleccion")
  25. Bladex.LoadSampledAnimation("../../Anm/Carcaj_Amz_seleccion.BMV","Carcaj_amz_seleccion",1,"Carcaj_Amz_seleccion")
  26.  
  27. Bladex.SetAnimationFactor("Amz_seleccion",3)
  28. #Bladex.SetAnimationFactor("Arco_amz_seleccion",3)
  29. #Bladex.SetAnimationFactor("Flecha_amz_seleccion",3)
  30. Bladex.SetAnimationFactor("Carcaj_amz_seleccion",3)
  31.  
  32. Bladex.LoadSampledAnimation("../../Anm/Dwf_seleccion.BMV","Dwf_seleccion",1,"Dwarf_N")
  33. #Bladex.LoadSampledAnimation("..\\..\\Anm\\Axe_Dwf_seleccion.BMV","Axe_dwf_seleccion",1,"Axe_Dwf_seleccion")
  34. Bladex.LoadSampledAnimation("../../Anm/Jar_Dwf_seleccion.BMV","Jar_dwf_seleccion",1,"Jar_Dwf_seleccion")
  35.  
  36. Bladex.SetAnimationFactor("Dwf_seleccion",3)
  37. Bladex.SetAnimationFactor("Jar_dwf_seleccion",3)
  38. #Bladex.SetAnimationFactor("Axe_dwf_seleccion",3)
  39.  
  40. Bladex.LoadSampledAnimation("../../Anm/Bar_seleccion.BMV","Bar_seleccion",1,"Barbarian_N")
  41. Bladex.LoadSampledAnimation("../../Anm/Piedra_bar_seleccion.BMV","Piedra_bar_seleccion",1,"Piedra_Bar_seleccion")
  42. Bladex.LoadSampledAnimation("../../Anm/Espada_bar_seleccion.BMV","Espada_bar_seleccion",1,"Espada_Bar_seleccion")
  43.  
  44. Bladex.SetAnimationFactor("Bar_seleccion",3)
  45. Bladex.SetAnimationFactor("Piedra_bar_seleccion",3)
  46. Bladex.SetAnimationFactor("Espada_bar_seleccion",3)
  47.  
  48. def GraspString (EntityName,EventName): 
  49.     bow= Bladex.GetEntity("ArcoAmz")
  50.     bow.Data.GraspString()
  51.  
  52. def UnGraspString (EntityName,EventName):
  53.     me= Bladex.GetEntity(EntityName)
  54.     bow= Bladex.GetEntity("ArcoAmz")
  55.     bow.Data.UnGraspString()
  56.     
  57.     #release arrow
  58.     arrow= Bladex.GetEntity("FlechaAmz")
  59.     arrow.ExcludeHitFor(me)
  60.     arrow.PutToWorld()
  61.     me.Unlink(arrow)
  62.     vx,vy,vz= arrow.Rel2AbsVector(0,0,-40000)
  63.     arrow.Fly(vx,vy,vz)
  64.  
  65. def TakeArrow (EntityName,EventName):
  66.     me= Bladex.GetEntity(EntityName)
  67.     arrow= Bladex.GetEntity("FlechaAmz")
  68.     arrow.Stop()
  69.     me.LinkAnchors("R_Hand",arrow,"1H_R")
  70.  
  71. def PickUpBowToLeft (EntityName,EventName): 
  72.     me= Bladex.GetEntity(EntityName)
  73.     bow= Bladex.GetEntity("ArcoAmz")
  74.     me.LinkAnchors("L_Hand",bow,"1H_L")
  75.  
  76. def LeftDrop (EntityName,EventName):    
  77.     me= Bladex.GetEntity(EntityName)
  78.     bow= Bladex.GetEntity("ArcoAmz")
  79.     me.Unlink(bow)
  80.  
  81. def EndAnmAmz(name):
  82.     time= Bladex.GetTime()
  83.     PickUpBowToLeftTime= 336.0/60.0
  84.     LeftDropTime= 768.0/60.0
  85.     TakeArrowTime= 580.0/60.0
  86.     GraspStringTime= 600.0/60.0
  87.     UnGraspStringTime= 646.0/60.0
  88.     Bladex.AddScheduledFunc(time+PickUpBowToLeftTime, PickUpBowToLeft,(name, "PickUpBowToLeft"),"PickUpBowToLeft")
  89.     Bladex.AddScheduledFunc(time+LeftDropTime,        LeftDrop,       (name, "LeftDrop"),       "LeftDrop")
  90.     Bladex.AddScheduledFunc(time+TakeArrowTime,       TakeArrow,      (name, "TakeArrow"),      "TakeArrow")
  91.     Bladex.AddScheduledFunc(time+GraspStringTime,     GraspString,    (name, "GraspString"),    "GraspString")
  92.     Bladex.AddScheduledFunc(time+UnGraspStringTime,   UnGraspString,  (name, "UnGraspString"),  "UnGraspString")
  93.  
  94.  
  95. def SetCameraInicio():
  96.     global CurrentPerson
  97.     global FinishPerson
  98.  
  99.     CurrentPerson = 2
  100.     FinishPerson = 2
  101.  
  102.     cam = Bladex.GetEntity("Camera")
  103.     cam.SetMaxCamera("Seleccion_Camera_seleccion_caballero.cam",0,-1)
  104.     AuxFuncs.FadeFrom(0.5, 0.5)
  105.  
  106. #Bladex.AddScheduledFunc(Bladex.GetTime(),SetCameraInicio,())
  107. SetCameraInicio()
  108.  
  109. def LanzarAnimacionActor():
  110.     SonidosDelKavayero()
  111.     SonidosDelEnano()
  112.     SonidosDelBarbaro()
  113.     SonidosDeLaAmazona()
  114.     
  115.     cab = Bladex.GetEntity("Caballero")
  116.     amz = Bladex.GetEntity("Amazona")
  117.     ena = Bladex.GetEntity("Enano")
  118.     bar = Bladex.GetEntity("Barbaro")
  119.  
  120.     glad = Bladex.GetEntity("WeaponActor1")
  121.     escudo = Bladex.GetEntity("EscudoActor1")
  122.     arco = Bladex.GetEntity("ArcoAmz")
  123.     #flecha = Bladex.GetEntity("FlechaAmz")
  124.     carcaj = Bladex.GetEntity("CarcajAmz")
  125.     jarra = Bladex.GetEntity("JarraDwf")
  126.     #hacha = Bladex.GetEntity("HachaDwf")
  127.     piedra = Bladex.GetEntity("PiedraBar")
  128.     espada = Bladex.GetEntity("EspadaBar")
  129.  
  130.     #glad.Position = 15751,-8338,-12536
  131.     #glad.Actor = 1
  132.     #glad.Animation = "Gladius"
  133.     
  134.     #escudo.Position = 16405,-8249,-12193
  135.     #escudo.Actor = 1
  136.     #escudo.Animation = "Shield_kgt_seleccion"           
  137.     
  138.     #flecha.Position = 15238,-1318,22399
  139.     #flecha.Position = 14793,-1379,22214
  140.     #14789,1305,22220
  141.  
  142.     #flecha.Actor = 1
  143.     #flecha.Animation = "Flecha_amz_seleccion"
  144.     #flecha.Alpha = 0.0
  145.  
  146.     carcaj.Position = 14656,-801,22334
  147.     carcaj.Actor = 1
  148.     carcaj.Animation = "Carcaj_amz_seleccion"
  149.  
  150.     jarra.Position = 12077,-355,10356
  151.     jarra.Actor = 1
  152.     jarra.Animation = "Jar_dwf_seleccion"
  153.  
  154.     #hacha.Position = 11862,-691,9307
  155.     #hacha.Position = 11976,-691,9307
  156.     #hacha.Actor = 1
  157.     #hacha.Animation = "Axe_dwf_seleccion"
  158.  
  159.     piedra.Position = -957,-149,-3251
  160.     piedra.Actor = 1
  161.     piedra.Animation = "Piedra_bar_seleccion"
  162.  
  163.     espada.Position = -630,-30,-3126
  164.     espada.Actor = 1
  165.     espada.Animation = "Espada_bar_seleccion"
  166.  
  167.     cab.Position = 16039, -8388,-11988
  168.     cab.Actor = 1
  169.     cab.Animation = "Kgt_seleccion"
  170.     
  171.     amz.Position = 14881, -1082,22235   
  172.     amz.Actor = 1   
  173.     #amz.AddAnmEventFunc("PickUpBowToLeft", PickUpBowToLeft)
  174.     #amz.AddAnmEventFunc("LeftDrop", LeftDrop)
  175.     #amz.AddAnmEventFunc("GraspString", GraspString)
  176.     #amz.AddAnmEventFunc("UnGraspString", UnGraspString)
  177.     amz.Animation="Amz_seleccion"
  178.     EndAnmAmz (amz.Name)
  179.     amz.OnAnimationEndFunc= EndAnmAmz
  180.  
  181.     ena.Position = 11563, -827,9813 
  182.     ena.Actor = 1
  183.     ena.Animation = "Dwf_seleccion"
  184.  
  185.     bar.Position = -99, -616,-3233  
  186.     bar.Actor = 1
  187.     bar.Animation = "Bar_seleccion"
  188.     
  189.     cab.LinkAnchors("R_Hand",glad,"1H_R")
  190.     cab.LinkAnchors("Shield",escudo,"Shield")
  191.  
  192.     glad.TurnOn()
  193.     escudo.TurnOn()
  194.     #flecha.TurnOn()
  195.     carcaj.TurnOn()
  196.     jarra.TurnOn()
  197.     #hacha.TurnOn()
  198.     piedra.TurnOn()
  199.     espada.TurnOn()
  200.     cab.TurnOn()
  201.     amz.TurnOn()
  202.     ena.TurnOn()    
  203.     bar.TurnOn()    
  204.  
  205.  
  206. def CreateActor():
  207.     char=Bladex.CreateEntity("Caballero","Knight_N",0,0,0)
  208.     char.RotateRel(0,0,0,1,0,0,1.57)
  209.     char.Static = 1
  210.  
  211.     glad=Bladex.CreateEntity("WeaponActor1","Gladius",0,0,0,"Weapon")
  212.     #glad.RotateRel(0,0,0,1,0,0,1.57)
  213.     #glad.Static = 1 
  214.  
  215.     escudo=Bladex.CreateEntity("EscudoActor1","Escudo3",0,0,0,"Weapon")
  216.     #escudo.RotateRel(0,0,0,1,0,0,1.57)
  217.     #escudo.Static = 1       
  218.  
  219.     arco=Bladex.CreateEntity("ArcoAmz","Arco2",16336,-671,22801,"Weapon")   
  220.     arco.Orientation=(0.499056011438, -0.50122833252, 0.49957087636, -0.500142157078)
  221.     arco.Data= ItemTypes.Arco_Amz_seleccion(arco)
  222.     
  223.  
  224.     flecha=Bladex.CreateEntity("FlechaAmz","Flecha",0,0,0,"Arrow")
  225.     #flecha.RotateRel(0,0,0,1,0,0,1.57)
  226.     #flecha.Static = 1
  227.     
  228.     carcaj=Bladex.CreateEntity("CarcajAmz","Carcaj_Amz_seleccion",0,0,0)
  229.     carcaj.RotateRel(0,0,0,1,0,0,1.57)
  230.     carcaj.Static = 1   
  231.  
  232.     taburete=Bladex.CreateEntity("TabureteDwf","Taburete_Dwf_seleccion",11537,-430,9786)
  233.     taburete.RotateRel(0,0,0,1,0,0,1.57)
  234.     
  235.     #hacha=Bladex.CreateEntity("HachaDwf","Axe_Dwf_seleccion",0,0,0)
  236.     #hacha.RotateRel(0,0,0,1,0,0,1.57)
  237.     #hacha.Static = 1
  238.  
  239.     jarra=Bladex.CreateEntity("JarraDwf","Jar_Dwf_seleccion",0,0,0)
  240.     jarra.RotateRel(0,0,0,1,0,0,1.57)
  241.     jarra.Static = 1
  242.  
  243.     piedra=Bladex.CreateEntity("PiedraBar","Piedra_Bar_seleccion",0,0,0)
  244.     piedra.RotateRel(0,0,0,1,0,0,1.57)
  245.     piedra.Static = 1
  246.     
  247.     espada=Bladex.CreateEntity("EspadaBar","Espada_Bar_seleccion",0,0,0)
  248.     espada.RotateRel(0,0,0,1,0,0,1.57)
  249.     espada.Static = 1
  250.  
  251.     pvarias=Bladex.CreateEntity("PiedrasVarias","PiedrasBarbaro",-684,103,-3346)
  252.     pvarias.RotateRel(0,0,0,1,0,0,1.57)
  253.     
  254.  
  255.     char=Bladex.CreateEntity("Amazona","Amazon_N",0,0,0)
  256.     char.RotateRel(0,0,0,1,0,0,1.57)
  257.     char.Static = 1
  258.  
  259.     char=Bladex.CreateEntity("Enano","Dwarf_N",0,0,0)
  260.     char.RotateRel(0,0,0,1,0,0,1.57)
  261.     char.Static = 1
  262.  
  263.     char=Bladex.CreateEntity("Barbaro","Barbarian_N",0,0,0)
  264.     char.RotateRel(0,0,0,1,0,0,1.57)
  265.     char.Static = 1
  266.  
  267. CreateActor()
  268.  
  269. Bladex.AddScheduledFunc(Bladex.GetTime()+0.0, LanzarAnimacionActor,())
  270.  
  271. CurrentPerson = 2
  272. FinishPerson = 2
  273. Stoped = 1
  274. StateArrow = 1
  275.  
  276. CameraPerson = ["Seleccion_Camera_seleccion_amazona.cam","Seleccion_Camera_seleccion_barbaro.cam","Seleccion_Camera_seleccion_caballero.cam","Seleccion_Camera_seleccion_enano.cam"]
  277. CameraAvance = ["Seleccion_Camera_amazona_barbaro.cam","Seleccion_Camera_barbaro_caballero.cam","Seleccion_Camera_caballero_enano.cam","Seleccion_Camera_enano_amazona.cam"]
  278. CameraRetroc = ["Seleccion_Camera_barbaro_amazona.cam","Seleccion_Camera_caballero_barbaro.cam","Seleccion_Camera_enano_caballero.cam","Seleccion_Camera_amazona_enano.cam"]
  279. MapaPerson = ["Ruins_M4","Barb_M1","Ragnar_M2","Dwarf_M3"]
  280.  
  281. FrameCamera = [60,50,60,47]
  282.  
  283.  
  284. def StopRecorridoCamera(Camera,Frame):
  285.     global Stoped
  286.  
  287.     if CurrentPerson == FinishPerson:
  288.         cam = Bladex.GetEntity("Camera")
  289.         cam.SetMaxCamera(CameraPerson[CurrentPerson],0,-1)
  290.         Stoped = 1
  291.         FadeArrow(2)
  292.         SelectCharacterWidget.SetVisible(1)
  293.     else:       
  294.         ChangePersonCamera()
  295.  
  296.  
  297. def ChangePersonCamera():
  298.     global CurrentPerson
  299.     global Stoped
  300.  
  301.     if Stoped:      
  302.         FadeArrow(1)
  303.         SelectCharacterWidget.SetVisible(0)
  304.  
  305.     #FlechaIzqWidget.SetVisible(0)
  306.     #FlechaDerWidget.SetVisible(0)
  307.  
  308.     Stoped = 0
  309.  
  310.     cam = Bladex.GetEntity("Camera")
  311.     dist = FinishPerson - CurrentPerson
  312.  
  313.     if CurrentPerson < FinishPerson:
  314.         if dist < 3:
  315.             cam.SetMaxCamera(CameraAvance[CurrentPerson],0,FrameCamera[CurrentPerson])
  316.             CurrentPerson = CurrentPerson + 1
  317.         else:
  318.             CurrentPerson = 3
  319.             cam.SetMaxCamera(CameraRetroc[CurrentPerson],0,FrameCamera[CurrentPerson])
  320.     else:
  321.         if dist > -3:
  322.             CurrentPerson = CurrentPerson - 1
  323.             cam.SetMaxCamera(CameraRetroc[CurrentPerson],0,FrameCamera[CurrentPerson])
  324.         else:
  325.             cam.SetMaxCamera(CameraAvance[CurrentPerson],0,FrameCamera[CurrentPerson])
  326.             CurrentPerson = 0
  327.  
  328.     cam.AddCameraEvent(-1,StopRecorridoCamera)
  329.  
  330. def PressKeyZ():    
  331.     global FinishPerson
  332.  
  333.     if (YesNoActivated):
  334.         ActivateWidgetYesNo()
  335.     elif Stoped:
  336.         if FinishPerson == 0:
  337.             FinishPerson = 3
  338.         else:
  339.             FinishPerson = FinishPerson - 1
  340.  
  341.         ChangePersonCamera()
  342.  
  343. def PressKeyX():    
  344.     global FinishPerson
  345.  
  346.     if (YesNoActivated):    
  347.         ActivateWidgetYesNo()
  348.     elif Stoped:
  349.         if FinishPerson == 3:
  350.             FinishPerson = 0
  351.         else:
  352.             FinishPerson = FinishPerson + 1
  353.  
  354.         ChangePersonCamera()
  355.  
  356. #def LoadTheMap():
  357. #   Bladex.LoadLevel(MapaPerson[CurrentPerson])
  358.  
  359. FlechaDerWidget = 0
  360. FlechaIzqWidget = 0
  361. SelectCharacterWidget = 0
  362. AreYouSureWidget = 0
  363. YesWidget = 0
  364. NoWidget = 0
  365. YesNoValue = 1
  366. YesNoActivated = 0
  367. InfoCharWidget1 = 0
  368. InfoCharWidget2 = 0
  369. InfoCharWidget3 = 0
  370. InfoCharWidget4 = 0
  371. fondo1 = 0
  372. fondo2 = 0
  373. fondo3 = 0
  374.  
  375.  
  376.  
  377.  
  378. marco1 = 0
  379. marco2 = 0
  380. marco3 = 0
  381. marco4 = 0
  382. marco5 = 0
  383. marco6 = 0
  384.  
  385. #Size_X = Scorer.wFrame.GetSize()[0]
  386. #Size_Y = Scorer.wFrame.GetSize()[1]
  387. #Size_X = 800.0
  388. #Size_Y = 600.0
  389. #import Raster
  390.  
  391. #Size_X = Raster.GetSize()[0]
  392. #Size_Y = Raster.GetSize()[1]
  393. ##Size_X=640
  394. Size_Y=480
  395.  
  396. #print "Resolucion Raster"
  397. #print Raster.GetSize()
  398.  
  399. ##Scorer.wFrame.SetAutoScale(0)
  400.  
  401. #ARX = Size_X / 640.0
  402. #ARY = Size_Y / 480.0
  403.  
  404.  
  405. MarcoAnchoTex = 256.0
  406. MarcoAltoTex = 256.0 
  407.  
  408.  
  409. #RasterRes = 
  410.  
  411. def SlideFrame(dir,time = 0):
  412.     if time < 1.0:
  413.         Bladex.AddScheduledFunc(Bladex.GetTime() + 0.025,SlideFrame,(dir,time + 0.05))
  414.     else:
  415.         time = 1.0
  416.  
  417.         if dir:
  418.             marco1.SetVisible(0)
  419.             marco2.SetVisible(0)
  420.             marco3.SetVisible(0)
  421.             marco4.SetVisible(0)
  422.             marco5.SetVisible(0)
  423.             marco6.SetVisible(0)
  424.         
  425.     if dir:
  426.         Y_UP = -MarcoAltoTex * time
  427.         Y_DOWN = (Size_Y - MarcoAltoTex) + MarcoAltoTex * time
  428.     else:
  429.         Y_UP = -MarcoAltoTex + MarcoAltoTex * time
  430.         Y_DOWN = Size_Y - MarcoAltoTex * time
  431.         
  432.     Scorer.wFrame.MoveWidgetTo("Marco1",0,Y_UP)
  433.     Scorer.wFrame.MoveWidgetTo("Marco2",MarcoAnchoTex,Y_UP)
  434.     Scorer.wFrame.MoveWidgetTo("Marco3",MarcoAnchoTex * 2.0,Y_UP)
  435.  
  436.     Scorer.wFrame.MoveWidgetTo("Marco4",0,Y_DOWN)
  437.     Scorer.wFrame.MoveWidgetTo("Marco5",MarcoAnchoTex,Y_DOWN)
  438.     Scorer.wFrame.MoveWidgetTo("Marco6",MarcoAnchoTex * 2.0,Y_DOWN)
  439.  
  440.  
  441. def CreateWidgetMarco():
  442.     global marco1
  443.     global marco2
  444.     global marco3
  445.     global marco4
  446.     global marco5
  447.     global marco6
  448.  
  449.     TamX = 256.0
  450.     TamY = 256.0
  451.  
  452.     marco1=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco1",256,256,"1","../../Data/seleccionpersonaje.mmp")
  453.     marco1.SetColor(255,255,255)
  454.     Scorer.wFrame.AddWidget(marco1,0,0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  455.     marco1.SetSize(TamX,TamY)
  456.     marco1.SetAlpha(1.0)
  457.     marco1.SetVisible(0)
  458.     marco1.SetAutoScale(1)
  459.  
  460.  
  461.     marco2=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco2",256,256,"2","../../Data/seleccionpersonaje.mmp")
  462.     marco2.SetColor(255,255,255)
  463.     Scorer.wFrame.AddWidget(marco2,256,0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  464.     marco2.SetSize(TamX,TamY)
  465.     marco2.SetAlpha(1.0)
  466.     marco2.SetVisible(0)
  467.     marco2.SetAutoScale(1)
  468.  
  469.     marco3=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco3",256,256,"3","../../Data/seleccionpersonaje.mmp")
  470.     marco3.SetColor(255,255,255)
  471.     Scorer.wFrame.AddWidget(marco3,512,0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  472.     marco3.SetSize(TamX,TamY)
  473.     marco3.SetAlpha(1.0)
  474.     marco3.SetVisible(0)
  475.     marco3.SetAutoScale(1)
  476.  
  477.     marco4=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco4",256,256,"4","../../Data/seleccionpersonaje.mmp")
  478.     marco4.SetColor(255,255,255)
  479.     Scorer.wFrame.AddWidget(marco4,0,480-256,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  480.     marco4.SetSize(TamX,TamY)
  481.     marco4.SetAlpha(1.0)
  482.     marco4.SetVisible(0)
  483.     marco4.SetAutoScale(1)
  484.  
  485.     marco5=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco5",256,256,"5","../../Data/seleccionpersonaje.mmp")
  486.     marco5.SetColor(255,255,255)
  487.     Scorer.wFrame.AddWidget(marco5,256,480-256,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  488.     marco5.SetSize(TamX,TamY)
  489.     marco5.SetAlpha(1.0)
  490.     marco5.SetVisible(0)
  491.     marco5.SetAutoScale(1)
  492.  
  493.     marco6=BUIx.B_BitmapWidget(Scorer.wFrame,"Marco6",256,256,"6","../../Data/seleccionpersonaje.mmp")
  494.     marco6.SetColor(255,255,255)
  495.     Scorer.wFrame.AddWidget(marco6,512,480-256,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  496.     marco6.SetSize(TamX,TamY)
  497.     marco6.SetAlpha(1.0)
  498.     marco6.SetVisible(0)
  499.     marco6.SetAutoScale(1)
  500.  
  501.  
  502. def CreateWidgetInfoChar():
  503.     global InfoCharWidget1
  504.     global InfoCharWidget2
  505.     global InfoCharWidget3
  506.     global InfoCharWidget4
  507.     global FlechaDerWidget
  508.     global FlechaIzqWidget
  509.  
  510.     InfoCharWidget1=BUIx.B_TextWidget(Scorer.wFrame,"InfoChar1","",ScorerWidgets.font_server,"../../Data/Letras menu gra.bmp")
  511.     InfoCharWidget1.SetText(TextInfoCharAmz1)
  512.     InfoCharWidget1.SetAlpha(1)
  513.     InfoCharWidget1.SetColor(255,0,0)   
  514.     Scorer.wFrame.AddWidget(InfoCharWidget1,0.5,100.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  515.     InfoCharWidget1.SetVisible(0)
  516.     InfoCharWidget1.SetAutoScale(1)
  517.  
  518.     InfoCharWidget2=BUIx.B_TextWidget(Scorer.wFrame,"InfoChar2","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  519.     InfoCharWidget2.SetText(TextInfoCharAmz2)
  520.     InfoCharWidget2.SetAlpha(1)
  521.     InfoCharWidget2.SetColor(254,254,202)   
  522.     #Scorer.wFrame.AddWidget(InfoCharWidget2,0.475,140.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  523.     Scorer.wFrame.AddWidget(InfoCharWidget2,0.5,140.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  524.     InfoCharWidget2.SetVisible(0)
  525.     InfoCharWidget2.SetAutoScale(1)
  526.  
  527.     InfoCharWidget3=BUIx.B_TextWidget(Scorer.wFrame,"InfoChar3","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  528.     InfoCharWidget3.SetText(TextInfoCharAmz3)
  529.     InfoCharWidget3.SetAlpha(1)
  530.     InfoCharWidget3.SetColor(254,116,4) 
  531.     #Scorer.wFrame.AddWidget(InfoCharWidget3,0.49,290.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  532.     Scorer.wFrame.AddWidget(InfoCharWidget3,0.5,290.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  533.     InfoCharWidget3.SetVisible(0)
  534.     InfoCharWidget3.SetAutoScale(1)
  535.  
  536.     InfoCharWidget4=BUIx.B_TextWidget(Scorer.wFrame,"InfoChar4","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  537.     InfoCharWidget4.SetText(TextInfoCharAmz4)
  538.     InfoCharWidget4.SetAlpha(1)
  539.     InfoCharWidget4.SetColor(247,255,171)   
  540.     Scorer.wFrame.AddWidget(InfoCharWidget4,0.5,320.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  541.     InfoCharWidget4.SetVisible(0)
  542.     InfoCharWidget4.SetAutoScale(1)
  543.  
  544.  
  545.     FlechaIzqWidget=BUIx.B_TextWidget(Scorer.wFrame,"FlechaIzqWidget","<",ScorerWidgets.font_server,"../../Data/Letras menu gra.bmp")
  546.     FlechaIzqWidget.SetAlpha(1)
  547.     FlechaIzqWidget.SetColor(128,128,128)   
  548.     FlechaIzqWidget.SetText("<")    
  549.     Scorer.wFrame.AddWidget(FlechaIzqWidget,0.03,15,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  550.     FlechaIzqWidget.SetVisible(1)
  551.     FlechaIzqWidget.SetAutoScale(1)
  552.  
  553.     FlechaDerWidget=BUIx.B_TextWidget(Scorer.wFrame,"FlechaDerWidget",">",ScorerWidgets.font_server,"../../Data/Letras menu gra.bmp")
  554.     FlechaDerWidget.SetAlpha(1)
  555.     FlechaDerWidget.SetColor(128,128,128)   
  556.     FlechaDerWidget.SetText(">")    
  557.     Scorer.wFrame.AddWidget(FlechaDerWidget,0.97,15,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  558.     FlechaDerWidget.SetVisible(1)
  559.     FlechaDerWidget.SetAutoScale(1)
  560.  
  561. def FadeTextInfo(time = 0.0):
  562.     if time < 1.0:
  563.         Bladex.AddScheduledFunc(Bladex.GetTime() + 0.02,FadeTextInfo,(time + 0.1,))
  564.     else:
  565.         time = 1.0
  566.  
  567.     InfoCharWidget1.SetAlpha(time)
  568.     InfoCharWidget2.SetAlpha(time)
  569.     InfoCharWidget3.SetAlpha(time)
  570.     InfoCharWidget4.SetAlpha(time)
  571.  
  572.  
  573. def FadeFondo(time = 0.0):
  574.     if time < 0.3:
  575.         Bladex.AddScheduledFunc(Bladex.GetTime() + 0.02,FadeFondo,(time + 0.02,))
  576.     else:
  577.         time = 0.3
  578.  
  579.     fondo1.SetAlpha(time * 3.33)
  580.     fondo2.SetAlpha(time * 3.33)
  581.     fondo3.SetAlpha(time * 3.33)
  582.  
  583. BBLib.ReadMMP("../../Data/seleccionamazona.mmp")
  584. BBLib.ReadMMP("../../Data/seleccionbarbaro.mmp")
  585. BBLib.ReadMMP("../../Data/seleccioncaballero.mmp")
  586. BBLib.ReadMMP("../../Data/seleccionenano.mmp")
  587.  
  588. def PrecargaBackgroundCharacters():
  589.     global fondo1
  590.     global fondo2
  591.     global fondo3   
  592.  
  593.     if fondo1 == 0:
  594.         TamX = 256.0
  595.         TamY = 256.0
  596.  
  597.         fondo1=BUIx.B_BitmapWidget(Scorer.wFrame,"FondoInfoChar",256,256,"AMZ1","../../Data/seleccionamazona.mmp")
  598.         fondo1.SetColor(255,255,255)
  599.         Scorer.wFrame.AddWidget(fondo1,0,0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  600.         fondo1.SetSize(TamX,TamY)
  601.         fondo1.SetAutoScale(1)
  602.  
  603.         fondo2=BUIx.B_BitmapWidget(Scorer.wFrame,"FondoInfoChar",256,256,"AMZ2","../../Data/seleccionamazona.mmp")
  604.         fondo2.SetColor(255,255,255)
  605.         Scorer.wFrame.AddWidget(fondo2,256.0,0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  606.         fondo2.SetSize(TamX,TamY)
  607.         fondo2.SetAutoScale(1)
  608.  
  609.         fondo3=BUIx.B_BitmapWidget(Scorer.wFrame,"FondoInfoChar",256,256,"AMZ3","../../Data/seleccionamazona.mmp")
  610.         fondo3.SetColor(255,255,255)
  611.         Scorer.wFrame.AddWidget(fondo3,0,256.0,BUIx.B_FrameWidget.B_FR_AbsoluteLeft,BUIx.B_FrameWidget.B_FR_Left,BUIx.B_FrameWidget.B_FR_AbsoluteTop,BUIx.B_FrameWidget.B_FR_Top)
  612.         fondo3.SetSize(TamX,TamY)
  613.         fondo3.SetAutoScale(1)
  614.  
  615.     fondo1.SetBitmap("AMZ1")
  616.     fondo2.SetBitmap("AMZ2")
  617.     fondo3.SetBitmap("AMZ3")
  618.  
  619.     fondo1.SetBitmap("BAR1")
  620.     fondo2.SetBitmap("BAR2")
  621.     fondo3.SetBitmap("BAR3")
  622.  
  623.     fondo1.SetBitmap("CAB1")
  624.     fondo2.SetBitmap("CAB2")
  625.     fondo3.SetBitmap("CAB3")
  626.  
  627.     fondo1.SetBitmap("ENA1")
  628.     fondo2.SetBitmap("ENA2")
  629.     fondo3.SetBitmap("ENA3")
  630.  
  631.  
  632. def ActivateWiggetInfoChar():
  633.  
  634.     if CurrentPerson == 0:
  635.         InfoCharWidget1.SetText(TextInfoCharAmz1)
  636.         InfoCharWidget2.SetText(TextInfoCharAmz2)
  637.         InfoCharWidget3.SetText(TextInfoCharAmz3)
  638.         InfoCharWidget4.SetText(TextInfoCharAmz4)
  639.  
  640.         fondo1.SetBitmap("AMZ1")
  641.         fondo2.SetBitmap("AMZ2")
  642.         fondo3.SetBitmap("AMZ3")
  643.     elif CurrentPerson == 1:
  644.         InfoCharWidget1.SetText(TextInfoCharBar1)
  645.         InfoCharWidget2.SetText(TextInfoCharBar2)
  646.         InfoCharWidget3.SetText(TextInfoCharBar3)
  647.         InfoCharWidget4.SetText(TextInfoCharBar4)
  648.  
  649.         fondo1.SetBitmap("BAR1")
  650.         fondo2.SetBitmap("BAR2")
  651.         fondo3.SetBitmap("BAR3")
  652.     elif CurrentPerson == 2:
  653.         InfoCharWidget1.SetText(TextInfoCharKgt1)
  654.         InfoCharWidget2.SetText(TextInfoCharKgt2)
  655.         InfoCharWidget3.SetText(TextInfoCharKgt3)
  656.         InfoCharWidget4.SetText(TextInfoCharKgt4)
  657.         
  658.         fondo1.SetBitmap("CAB1")
  659.         fondo2.SetBitmap("CAB2")
  660.         fondo3.SetBitmap("CAB3")
  661.     elif CurrentPerson == 3:
  662.         InfoCharWidget1.SetText(TextInfoCharDwf1)
  663.         InfoCharWidget2.SetText(TextInfoCharDwf2)
  664.         InfoCharWidget3.SetText(TextInfoCharDwf3)
  665.         InfoCharWidget4.SetText(TextInfoCharDwf4)
  666.         
  667.         fondo1.SetBitmap("ENA1")
  668.         fondo2.SetBitmap("ENA2")
  669.         fondo3.SetBitmap("ENA3")
  670.  
  671.     
  672.     fondo1.SetVisible(1)
  673.     fondo2.SetVisible(1)
  674.     fondo3.SetVisible(1)
  675.     FadeFondo()
  676.     
  677.     InfoCharWidget1.SetVisible(1)
  678.     InfoCharWidget2.SetVisible(1)
  679.     InfoCharWidget3.SetVisible(1)
  680.     InfoCharWidget4.SetVisible(1)
  681.  
  682.     InfoCharWidget1.SetAlpha(0)
  683.     InfoCharWidget2.SetAlpha(0)
  684.     InfoCharWidget3.SetAlpha(0)
  685.     InfoCharWidget4.SetAlpha(0)
  686.  
  687.     Bladex.AddScheduledFunc(Bladex.GetTime() + 0.3,FadeTextInfo,())
  688.     Bladex.AddScheduledFunc(Bladex.GetTime() + 0.5,ScreenSelectionFinish,())
  689.  
  690.     ActivateWidgetYesNo()
  691.     
  692.     AreYouSureWidget.SetVisible(1)  
  693.     YesWidget.SetVisible(1)
  694.     NoWidget.SetVisible(1)
  695.  
  696.     Scorer.wFrame.RecalcLayout()
  697.  
  698.  
  699. ScreenSelectionFinished = 1
  700.  
  701. def ScreenSelectionFinish():
  702.     global ScreenSelectionFinished
  703.  
  704.     ScreenSelectionFinished = 1
  705.  
  706.  
  707. Bladex.AddScheduledFunc(Bladex.GetTime() + 0.3,FadeTextInfo,())
  708.  
  709.  
  710.  
  711. def ActivateWidgetYesNo():
  712.     global YesNoValue   
  713.  
  714.     if (YesNoValue):
  715.         YesWidget.SetColor(128,128,128)
  716.         NoWidget.SetColor(255,255,255)
  717.         YesNoValue = 0
  718.     else:
  719.         YesWidget.SetColor(255,255,255)
  720.         NoWidget.SetColor(128,128,128)
  721.         YesNoValue = 1
  722.  
  723. def CreateWidgetAreYouSure():
  724.     global SelectCharacterWidget
  725.     global AreYouSureWidget
  726.     global YesWidget
  727.     global NoWidget 
  728.     
  729.     SelectCharacterWidget=BUIx.B_TextWidget(Scorer.wFrame,"SelectCharacter","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  730.     SelectCharacterWidget.SetAlpha(1)
  731.     SelectCharacterWidget.SetColor(128,128,128) 
  732.     SelectCharacterWidget.SetText(MenuText.GetMenuText("Press arrows to choose character.Press enter to select"))
  733.  
  734.     AreYouSureWidget=BUIx.B_TextWidget(Scorer.wFrame,"AreYouSure","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  735.     AreYouSureWidget.SetAlpha(1)
  736.     AreYouSureWidget.SetColor(255,255,255)  
  737.     AreYouSureWidget.SetText(MenuText.GetMenuText("ARE YOU SURE?"))
  738.     
  739.     YesWidget=BUIx.B_TextWidget(Scorer.wFrame,"Yes","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  740.     YesWidget.SetAlpha(1)
  741.     YesWidget.SetColor(128,128,128)
  742.     YesWidget.SetText(MenuText.GetMenuText("Yes"))
  743.     
  744.     NoWidget=BUIx.B_TextWidget(Scorer.wFrame,"No","",ScorerWidgets.font_server,"../../Data/Letras menu med.bmp")
  745.     NoWidget.SetAlpha(1)
  746.     NoWidget.SetColor(128,128,128)
  747.     NoWidget.SetText(MenuText.GetMenuText("No"))
  748.     
  749.     Scorer.wFrame.AddWidget(SelectCharacterWidget,0.50,22.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  750.     Scorer.wFrame.AddWidget(AreYouSureWidget,0.45,23.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  751.     Scorer.wFrame.AddWidget(YesWidget,0.56,23.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  752.     Scorer.wFrame.AddWidget(NoWidget,0.60,23.0,BUIx.B_FrameWidget.B_FR_HRelative,BUIx.B_FrameWidget.B_FR_HCenter,BUIx.B_FrameWidget.B_FR_AbsoluteBottom,BUIx.B_FrameWidget.B_FR_Bottom)
  753.  
  754.     SelectCharacterWidget.SetVisible(1)
  755.     AreYouSureWidget.SetVisible(0)
  756.     YesWidget.SetVisible(0)
  757.     NoWidget.SetVisible(0)  
  758.  
  759. last_start_time = 0
  760. last_fade_time = 0
  761. Forward_Arrow = 1
  762.  
  763. def FadeArrow(fade):
  764.     global last_fade_time
  765.     global StateArrow
  766.  
  767.     StateArrow = fade + 1
  768.     last_fade_time = Bladex.GetTime()
  769.  
  770.  
  771. def MoveArrow(entity,time):
  772.     global last_start_time
  773.     global Forward_Arrow
  774.     global StateArrow
  775.  
  776.     if StateArrow:
  777.         delta_time = time - last_start_time
  778.  
  779.         if delta_time >= 0.33:
  780.             last_start_time = time
  781.             delta_time = 0
  782.  
  783.             if Forward_Arrow:
  784.                 Forward_Arrow = 0
  785.             else:
  786.                 Forward_Arrow = 1
  787.  
  788.         Disp = delta_time * 0.03
  789.  
  790.         Y = 15.0
  791.  
  792.         if Forward_Arrow:
  793.             Scorer.wFrame.MoveWidgetTo("FlechaIzqWidget",0.03 - Disp,Y)
  794.             Scorer.wFrame.MoveWidgetTo("FlechaDerWidget",0.97 + Disp,Y)
  795.         else:
  796.             Scorer.wFrame.MoveWidgetTo("FlechaIzqWidget",0.02 + Disp,Y)
  797.             Scorer.wFrame.MoveWidgetTo("FlechaDerWidget",0.98 - Disp,Y)
  798.     if StateArrow == 2:     
  799.         delta_time = time - last_fade_time
  800.         delta_time = delta_time * 2.0
  801.         
  802.         if delta_time >= 1.0:
  803.             delta_time = 1.0
  804.             StateArrow = 0
  805.         
  806.         alpha = 1.0 - delta_time        
  807.         
  808.         FlechaIzqWidget.SetAlpha(alpha)
  809.         FlechaDerWidget.SetAlpha(alpha)
  810.     elif StateArrow == 3:
  811.         alpha = time - last_fade_time
  812.         alpha = alpha * 2.0
  813.         
  814.         if alpha <= 0.0:
  815.             delta_time = 0.0
  816.             StateArrow = 1
  817.             #FlechaIzqWidget.SetAlpha(alpha)
  818.             #FlechaDerWidget.SetAlpha(alpha)
  819.         
  820.         FlechaIzqWidget.SetAlpha(alpha)
  821.         FlechaDerWidget.SetAlpha(alpha)
  822.  
  823.  
  824. char = Bladex.GetEntity("Player1")
  825. char.TimerFunc = MoveArrow
  826. char.SubscribeToList("Timer60")
  827.  
  828. #Scorer.wFrame.MoveWidgetTo("Yes",0.6,30)
  829. #Scorer.wFrame.MoveWidgetTo("No",0.65,30)
  830.     
  831. def PressKeyEnter():
  832.     global ScreenSelectionFinished
  833.     global YesNoValue
  834.     global YesNoActivated
  835.  
  836.     if YesNoActivated:
  837.         print "YesNoActivated 1"
  838.         if ScreenSelectionFinished: 
  839.             print "ScreenSelectionFinished 1"
  840.             ScreenSelectionFinished = 0
  841.  
  842.             YesNoActivated = 0
  843.             AreYouSureWidget.SetVisible(0)
  844.             Bladex.AddScheduledFunc(Bladex.GetTime() + 0.6,SelectCharacterWidget.SetVisible,(1,))
  845.             Bladex.AddScheduledFunc(Bladex.GetTime() + 0.6,ScreenSelectionFinish,())
  846.             YesWidget.SetVisible(0)
  847.             NoWidget.SetVisible(0)
  848.             
  849.             InfoCharWidget1.SetVisible(0)
  850.             InfoCharWidget2.SetVisible(0)
  851.             InfoCharWidget3.SetVisible(0)
  852.             InfoCharWidget4.SetVisible(0)
  853.             
  854.             fondo1.SetVisible(0)
  855.             fondo2.SetVisible(0)
  856.             fondo3.SetVisible(0)
  857.             FlechaIzqWidget.SetVisible(1)
  858.             FlechaDerWidget.SetVisible(1)
  859.             
  860.             SlideFrame(1)
  861.  
  862.             if YesNoValue:
  863.                 print "YesNoValue 1"
  864.                 Menu.SwitchToCasaMenu()
  865.                 Menu.ActivateMenu()
  866.                 Menu.Character = CurrentPerson
  867.         
  868.                 File = open("..\\2DMap\\2dMapData.txt","w")
  869.                 if CurrentPerson == 0:
  870.                     File.write("AM")
  871.                 if CurrentPerson == 1:
  872.                     File.write("BR")
  873.                 if CurrentPerson == 2:
  874.                     File.write("KN")
  875.                 if CurrentPerson == 3:
  876.                     File.write("DW")
  877.                 File.close()
  878.     elif Stoped:
  879.         if ScreenSelectionFinished:        
  880.             if Reference.DEMO_MODE==1 and CurrentPerson == 0 and ("AM" not in Reference.DEMO_PLAYERS):
  881.                 print "Amazon not available in demo"
  882.                 GameText.WriteTextAux(MenuText.GetMenuText("Amazon not available in demo mode"),2.0,255,255,255,[])
  883.                 return
  884.             if Reference.DEMO_MODE==1 and CurrentPerson == 1 and ("BR" not in Reference.DEMO_PLAYERS):
  885.                 print "Barbarian not available in demo"
  886.                 GameText.WriteTextAux(MenuText.GetMenuText("Barbarian not available in demo mode"),2.0,255,255,255,[])
  887.                 return
  888.             if Reference.DEMO_MODE==1 and CurrentPerson == 2 and ("KN" not in Reference.DEMO_PLAYERS):
  889.                 print "Knight not available in demo"
  890.                 GameText.WriteTextAux(MenuText.GetMenuText("Knight not available in demo mode"),2.0,255,255,255,[])
  891.                 return
  892.             if Reference.DEMO_MODE==1 and CurrentPerson == 3 and ("DW" not in Reference.DEMO_PLAYERS):
  893.                 print "Dwarf not available in demo"
  894.                 GameText.WriteTextAux(MenuText.GetMenuText("Dwarf not available in demo mode"),2.0,255,255,255,[])
  895.                 return
  896.  
  897.             ScreenSelectionFinished = 0
  898.             YesNoActivated = 1
  899.             YesNoValue = 0          
  900.             Bladex.AddScheduledFunc(Bladex.GetTime() + 0.6,ActivateWiggetInfoChar,())
  901.             SelectCharacterWidget.SetVisible(0)
  902.             FlechaIzqWidget.SetVisible(0)
  903.             FlechaDerWidget.SetVisible(0)
  904.             SlideFrame(0)
  905.             marco1.SetVisible(1)
  906.             marco2.SetVisible(1)
  907.             marco3.SetVisible(1)
  908.             marco4.SetVisible(1)
  909.             marco5.SetVisible(1)
  910.             marco6.SetVisible(1)
  911.  
  912. CreateWidgetAreYouSure()
  913. CreateWidgetInfoChar()
  914. CreateWidgetMarco()
  915.  
  916. def PressKeyEsc():
  917.     global YesNoActivated
  918.     global ScreenSelectionFinished
  919.  
  920.     if YesNoActivated:
  921.         if ScreenSelectionFinished:
  922.             ScreenSelectionFinished = 0
  923.             YesNoActivated = 0
  924.             AreYouSureWidget.SetVisible(0)          
  925.             Bladex.AddScheduledFunc(Bladex.GetTime() + 0.6,SelectCharacterWidget.SetVisible,(1,))
  926.             Bladex.AddScheduledFunc(Bladex.GetTime() + 0.6,ScreenSelectionFinish,())
  927.             YesWidget.SetVisible(0)
  928.             NoWidget.SetVisible(0)
  929.             
  930.             InfoCharWidget1.SetVisible(0)
  931.             InfoCharWidget2.SetVisible(0)
  932.             InfoCharWidget3.SetVisible(0)
  933.             InfoCharWidget4.SetVisible(0)
  934.             
  935.             fondo1.SetVisible(0)
  936.             fondo2.SetVisible(0)
  937.             fondo3.SetVisible(0)
  938.             FlechaIzqWidget.SetVisible(1)
  939.             FlechaDerWidget.SetVisible(1)
  940.             SlideFrame(1)
  941.     else:
  942.         Menu.ActivateMenu()
  943.  
  944. import BInput
  945.  
  946. InputManager=BInput.GetInputManager()
  947. LastOne = InputManager.GetInputActionsSet()
  948. InputManager.SetInputActionsSet("Default")
  949.  
  950. Bladex.AddInputAction("Retrocede",0)
  951. Bladex.AddInputAction("Avanza",0)
  952. Bladex.AddInputAction("Selecciona",0)
  953. Bladex.AddInputAction("Cancelar",0)
  954.     
  955. def RedefineKeys():
  956.     import BInput
  957.     
  958.     InputManager=BInput.GetInputManager()
  959.     LastOne = InputManager.GetInputActionsSet()
  960.     InputManager.SetInputActionsSet("Default")
  961.  
  962.     Bladex.AssocKey("Retrocede","Keyboard","Right")
  963.     Bladex.AssocKey("Avanza","Keyboard","Left")
  964.     Bladex.AssocKey("Selecciona","Keyboard","Enter")
  965.     Bladex.AssocKey("Cancelar","Keyboard","Esc")
  966.  
  967.     InputManager.SetInputActionsSet(LastOne)
  968.  
  969. KeybWidget.AdditionalKeysCallBack = RedefineKeys
  970.  
  971. RedefineKeys()
  972.  
  973. Bladex.AddBoundFunc("Retrocede",PressKeyX)
  974. Bladex.AddBoundFunc("Avanza",PressKeyZ)
  975. Bladex.AddBoundFunc("Selecciona",PressKeyEnter)
  976. Bladex.AddBoundFunc("Cancelar",PressKeyEsc)
  977. InputManager.SetInputActionsSet(LastOne)
  978.  
  979.  
  980. HouseActive = 0
  981.  
  982. # funcion callback indica que El Usuario Presiona La Tecla Escape
  983. def ElUsuarioPresionaLaTeclaEscape(Salio):
  984.     global HouseActive
  985.     if Salio:
  986.         HouseActive = 1     
  987.     else:
  988.         if HouseActive:
  989.             Menu.SwitchToGlobalMenu()
  990.         return not HouseActive
  991.     
  992.     
  993.     
  994. Menu.EscapeFunction = ElUsuarioPresionaLaTeclaEscape
  995.  
  996. def SetDefaultPerson():
  997.     global CurrentPerson
  998.     global FinishPerson
  999.  
  1000.     CurrentPerson = 3
  1001.     FinishPerson = 3
  1002.  
  1003.     cam = Bladex.GetEntity("Camera")
  1004.     cam.SetMaxCamera("Seleccion_Camera_seleccion_enano.cam",0,-1)
  1005.  
  1006. def ActivateStartWidgets():
  1007.     SelectCharacterWidget.SetVisible(1)
  1008.     FlechaDerWidget.SetVisible(1)
  1009.     FlechaIzqWidget.SetVisible(1)
  1010.  
  1011. def DeactivateStartWidgets():
  1012.     SelectCharacterWidget.SetVisible(0)
  1013.     FlechaDerWidget.SetVisible(0)
  1014.     FlechaIzqWidget.SetVisible(0)
  1015.  
  1016. def OnEnterDemoCasa():
  1017.     DeactivateStartWidgets()
  1018.  
  1019. def OnLeaveDemoCasa():
  1020.     global CurrentPerson
  1021.     ActivateStartWidgets()
  1022.     cam = Bladex.GetEntity("Camera")
  1023.     cam.SetMaxCamera(CameraPerson[CurrentPerson],0,-1)
  1024.     #SetDefaultPerson()
  1025.  
  1026. PrecargaBackgroundCharacters()
  1027.